home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Technotools
/
Technotools (Chestnut CD-ROM)(1993).ISO
/
batch
/
vbell
/
vbell.pas
< prev
Wrap
Pascal/Delphi Source File
|
1988-03-12
|
2KB
|
50 lines
{ VBELL.PAS 03-13-88 TEM Variable Sound Utility for .bat }
{ =-=-=-=-= Hz 925 and Sustain 200 are equivalent of BEEP. }
{ Turbo Pascal Version 4.0 (uses CRT unit). }
program vbell;
uses Crt;
var
error : integer; { In case Val function returns error }
Hz : word;
Sus : word;
begin
hz := 00925; { Hertz cycles per second pitch of sound }
Sus:= 00200; { Sustain period in 1000ths of a second. }
If ParamCount < 2 then
begin
Writeln(' ');
Writeln(' VBELL format: vbell hertz sustain comment/ignored.');
Writeln(' --------------------------------------------------------');
Writeln(' Where hertz is 50 to 12000 cycles per second pitch.');
Writeln(' sustain is 100 to 30000 for 1000ths of a second.');
Writeln(' ');
Writeln(' EXAMPLES: vbell 50 200 the sound you just heard.');
Writeln(' vbell 925 200 equivalent of DOS beep. ');
Writeln(' vbell 100 100 soft and subtle. ');
Sound(50);
Delay(200);
NoSound;
exit
end;
If ParamCount > 1 then { So 2 parms were entered }
begin
Val(ParamStr(1), Hz, error); { Convert string to integer }
If error > 0 then Hz := 925; { Default if error }
If Hz < 50 then Hz := 50; { Range checking }
If Hz > 12000 then Hz := 12000;
Val(ParamStr(2), Sus, error);
If error > 0 then Sus := 200; { Default if error }
If Sus < 100 then Sus := 100;
If Sus > 30000 then Sus := 30000; { 30 seconds maximum }
Sound(Hz); { Cycles per second pitch. }
Delay(Sus); { Mileseconds to sustain sound }
NoSound; { Required to stop sound ! }
exit
end;
end.